The present invention relates to oximeters, and in particular to ensemble averaging of pulses in a detected waveform from a pulse oximeter.
Pulse oximetry is typically used to measure various blood chemistry characteristics including, but not limited to, the blood-oxygen saturation of hemoglobin in arterial blood, the volume of individual blood pulsations supplying the tissue, and the rate of blood pulsations corresponding to each heartbeat of a patient. Measurement of these characteristics has been accomplished by use of a non-invasive sensor which scatters light through a portion of the patient's tissue where blood perfuses the tissue, and photoelectrically senses the absorption of light in such tissue. The amount of light absorbed at various wavelengths is then used to calculate the amount of blood constituent being measured.
The light scattered through the tissue is selected to be of one or more wavelengths that are absorbed by the blood in an amount representative of the amount of the blood constituent present in the blood. The amount of transmitted light scattered through the tissue will vary in accordance with the changing amount of blood constituent in the tissue and the related light absorption. For measuring blood oxygen level, such sensors have typically been provided with a light source that is adapted to generate light of at least two different wavelengths, and with photodetectors sensitive to both of those wavelengths, in accordance with known techniques for measuring blood oxygen saturation.
Known non-invasive sensors include devices that are secured to a portion of the body, such as a finger, an ear or the scalp. In animals and humans, the tissue of these body portions is perfused with blood and the tissue surface is readily accessible to the sensor.
N-100. The N-100 technology, dating to around 1985, accepted or rejected pulses based on pulse history of the size of pulses, pulse shape, expected time to occur (frequency) and ratio of R/IR.
In particular, the N-100 found pulses by looking for a signal maximum, followed by a point of maximum negative slope, then a minimum. The processing was done in a state machine referred to as “munch.” Each maximum was not qualified until the signal passed below a noise threshold, referred to as a noise gate. This acted as an adaptive filter since the noise gate level was set by feedback from a subsequent processing step to adapt to different expected signal amplitudes. The pulses are then accepted or rejected in a “Level3” process which was a filter which adapts to changing signals by comparing the amplitude, period and ratio-of-ratios (ratio of Red to IR, with Red and IR being expressed as a ratio of AC to DC) of a new pulse to the mean of values in a history buffer, then determining if the difference is within a confidence level. If the new pulse was accepted, the history buffer was updated with the values for the new pulse. The level3 process acted as an adaptive bandpass filter with center-frequency and bandwidth (confidence limits) being adapted by feedback from the output of the filter.
N-200. The N-200 improved on the N-100 since it could be synchronized with an ECG, and included ECG filtering. The N-200 also added interpolation to compensate for baseline shift between the time of measuring the pulse maximum and minimum. The N-200 included other filtering features as well, such as a “boxcar” filter which computed the mean of a varying number of signal samples.
The N-200, after various filtering and scaling steps, applies the digitized signals to a “boxcar” filter, which computes the mean of N samples, where N is set by feedback from a subsequent processing step according to the filtered heart rate. New samples are averaged into the boxcar filter, while the oldest samples are dropped. The boxcar length (N) is used to set three parameters: a pulse threshold, absolute minimum pulse and small pulse. An ensemble-averaging (a.k.a “slider”) filter then produces a weighted average of the new samples and the previous ensemble-averaged sample from one pulse-period earlier. The samples are then passed to a “munch” state machine and a noise gate, like the N-100. An interpolation feature is added to the N-100 process, to compensate for changes in the baseline level. Since the minimum and maximum occur at different times, a changing baseline may increase or decrease the minimum and not the maximum, or vice-versa.
“Ensemble averaging” is an integral part of C-Lock, which is NELLCOR's trademark for the process of averaging samples from multiple pulses together to form a composite pulse. This process is also known as “cardiac-gated averaging.” It requires a “trigger” event to mark the start of each pulse.
Conlon U.S. Pat. No. 4,690,126 discloses ensemble averaging where different weights are assigned to different pulses and a composite, averaged pulse waveform is used to calculate oxygen saturation. The N-100 described above is described in U.S. Pat. No. 4,802,486. Aspects of the N-200 are described in U.S. Pat. No. 4,911,167 (Corenman) and U.S. Pat. No. 5,078,136 (Stone).